package com.aizuda.boot.modules.flw.entity;

import com.aizuda.core.bean.SuperEntity;
import com.aizuda.core.validation.Create;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.PositiveOrZero;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;

/**
 * 流程定义参与者
 *
 * @author 青苗
 * @since 2023-09-07
 */
@Getter
@Setter
@Schema(name = "FlwProcessActor", description = "流程定义参与者")
public class FlwProcessActor extends SuperEntity {

	@Schema(description = "租户ID")
	private String tenantId;

	@Schema(description = "流程定义ID")
	@NotNull(groups = Create.class)
	@PositiveOrZero
	private Long processId;

	@Schema(description = "参与者ID")
	@NotNull(groups = Create.class)
	@PositiveOrZero
	private Long actorId;

	@Schema(description = "参与者")
	@NotBlank(groups = Create.class)
	@Size(max = 255)
	private String actorName;

	@Schema(description = "参与者类型 0，角色 1，部门")
	@NotNull(groups = Create.class)
	@PositiveOrZero
	private Integer actorType;

}
